package com.ruoyi.security.domain;

import lombok.Data;

import java.math.BigDecimal;

/**
 * @author yeoman
 * @date 2025/11/11 19:26
 * @description
 */
@Data
public class SecurityGridTradingBacktestHistoryStatistics {

    /**
     * 买入次数
     */
    private Integer buyCount;

    /**
     * 卖出次数
     */
    private Integer sellCount;

    /**
     * 交易次数
     */
    private Integer tradeCount;
    /**
     * 买入数量
     */
    private Integer buyQuantity;
    /**
     * 卖出数量
     */
    private Integer sellQuantity;
    /**
     * 交易数量
     */
    private Integer tradeQuantity;
    /**
     * 买入金额
     */
    private BigDecimal buyAmount;
    /**
     * 卖出金额
     */
    private BigDecimal sellAmount;
    /**
     * 交易金额
     */
    private BigDecimal tradeAmount;
    /**
     * 买入手续费
     */
    private BigDecimal buyChargeAmount;
    /**
     * 卖出手续费
     */
    private BigDecimal sellChargeAmount;
    /**
     * 交易手续费
     */
    private BigDecimal tradeChargeAmount;
    /**
     * 持仓数量
     */
    private Integer position;

    /**
     * 持仓天数
     */
    private Integer positionDays;

    /**
     * 空仓天数
     */
    private Integer emptyPositionDays;

    /**
     * 空仓日
     */
    private String emptyPositionDayList;

    /**
     * 市值
     */
    private BigDecimal marketValue;
    /**
     * 可用资金
     */
    private BigDecimal availableAmount;
    /**
     * 总资产
     */
    private BigDecimal totalAssets;
    /**
     * 总收益
     */
    private BigDecimal totalProfit;

    /**
     * 总收益率（%）- 当前投入
     */
    private String totalProfitRateByCurrentInvestment;

    /**
     * 总收益率（%）- 最大投入
     */
    private String totalProfitRateByMaxInvestment;

    /**
     * 总收益率（%）- 期初总资产
     */
    private String totalProfitRateByInitialTotalAssets;

    /**
     * 一直持有收益
     */
    private BigDecimal alwaysHoldProfit;

    /**
     * 一直持有收益率（%）
     */
    private BigDecimal alwaysHoldProfitRate;

    /**
     * 超额收益率（%）- 当前投入
     */
    private BigDecimal excessProfitRateByCurrentInvestment;

    /**
     * 超额收益率（%）- 最大投入
     */
    private BigDecimal excessProfitRateByMaxInvestment;

    /**
     * 超额收益率（%）- 期初总资产
     */
    private BigDecimal excessProfitRateByInitialTotalAssets;

}
